﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using EvidenceLib.Base;
using EvidenceLib.Core;
using EvidenceLib.System;

namespace EvidenceLib.Case
{
    /// <summary>
    /// 位置类型
    /// </summary>
    public enum LocationTypeEnum { Local = 0, Center = 1 }
    /// <summary>
    /// 单据库存状态
    /// </summary>
    public enum BillStorageStateEnum { None = 0, PartIn = 1, AllIn = 2, PartInquiryIn = 4, AllInquiryIn = 8,PartOut = 16, AllOut = 32, PartInquiryOut = 64, AllInquiryOut = 128, Finish = 256 }

    /// <summary>
    /// 物品状态
    /// None =未入库，InStock=已经入库，Finish= 已经结案
    /// </summary>6
    public enum CaseStateEnum { None = 0, InStock = 1, InquiryInStock = 2, OutStock = 3, InquiryOutStock = 4 } 


    /// <summary>
    /// 物品单据状态
    /// </summary>
    public enum EvidenceBillStateEnum { None = 0, Submit = 1 };
    /// <summary>
    /// 涉案物品记录
    /// </summary>
    public class EvidenceBill:Bill
    {
        /// <summary>
        /// 送交（调用）部门
        /// </summary>
        public virtual Organization TransferDept { get; set; }
        /// <summary>
        /// 送交（调用）人
        /// </summary>
        //public virtual User Transfer { get; set; }

        /// <summary>
        /// 办案人(文本)
        /// </summary>
        public virtual string TransferName { get; set; }
        /// <summary>
        /// 送交（调用）人联系电话
        /// </summary>
        public virtual string TransferPhone { get; set; }
        /// <summary>
        /// 保管位置类型
        /// </summary>
        public virtual LocationTypeEnum LocationType { get; set; }
        /// <summary>
        /// 管理部门
        /// </summary>
        public virtual Organization ManageDept { get; set; }
        /// <summary>
        /// 已交最后期限
        /// </summary>
        public virtual DateTime TransferLastTime { get; set; }
        /// <summary>
        /// 在库状态
        /// </summary>
        public virtual BillStorageStateEnum StockState { get; set; }

        /// <summary>
        /// 单据状态
        /// </summary>
        public virtual CaseStateEnum CaseState { get; set; }
        /// <summary>
        /// 已经结案
        /// </summary>
        public virtual bool IsFinish { get; set; }
    }
}
